//package com.unionx.yanlian.websocket;  
//
//import java.io.IOException;
//import java.io.InputStream;
//import java.io.Reader;
//import java.nio.CharBuffer;
//import java.util.HashMap;
//import java.util.Map;
//
//import org.apache.catalina.websocket.StreamInbound;
//import org.apache.catalina.websocket.WsOutbound;
//  
//public class HelloMessageInbound extends StreamInbound {  
//  
//    private String WS_NAME;  
//    private final String FORMAT = "%s : %s";  
//    private final String PREFIX = "ws_";  
//    private String sessionId = "";
//    //保存连接的MAP容器
//  	private static final Map<String,WebSocketMessageInbound > connections = new HashMap<String,WebSocketMessageInbound>();
//  
//    public HelloMessageInbound(int id, String _sessionId) {  
//        this.WS_NAME = PREFIX + id;  
//        this.sessionId = _sessionId;  
//    }
//  
//    @Override  
//    protected void onTextData(Reader reader) throws IOException {  
//        char[] chArr = new char[1024];  
//        int len = reader.read(chArr);  
//        send(String.copyValueOf(chArr, 0, len));  
//    }  
//  
//    @Override  
//    protected void onClose(int status) {  
//        System.out.println(String.format(FORMAT, WS_NAME, "closing ......"));  
//        super.onClose(status);  
//    }  
//  
//    @Override  
//    protected void onOpen(WsOutbound outbound) {  
//        super.onOpen(outbound);  
//        try {  
//            send("hello, my name is " + WS_NAME);  
//            send("session id = " + this.sessionId);  
//        } catch (IOException e) {  
//            e.printStackTrace();  
//        }  
//    }  
//  
//    private void send(String message) throws IOException {
//        message = String.format(FORMAT, WS_NAME, message);  
//        System.out.println(message);
//        
//        getWsOutbound().writeTextMessage(CharBuffer.wrap(message));  
//    }  
//  
//    @Override  
//    protected void onBinaryData(InputStream arg0) throws IOException {  
//    }  
//}  